package br.ufrj.neg.reuniao.servlet;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.apache.velocity.tools.view.VelocityViewServlet;

import br.ufrj.neg.bean.Idioma;
import br.ufrj.neg.constants.General;

import br.ufrj.neg.reuniao.bean.ArtefatoBean;
import br.ufrj.neg.reuniao.model.ArtefatoModel;
import br.ufrj.neg.reuniao.model.EncaminhamentoModel;
import br.ufrj.neg.reuniao.model.ParticipanteModel;
import br.ufrj.neg.reuniao.model.ReuniaoModel;

public class ExcluirReuniaoAction extends VelocityViewServlet {

	private static final long serialVersionUID = 1L;

	// private static Logger log = Logger.getLogger("rootLogger");

	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws IOException, ServletException {
		try {
			/*
			 * Pega os parametros passados
			 */
			Idioma idioma = (Idioma) request.getAttribute("idioma");
			
			HttpSession session = request.getSession(false);

			int idReuniao = Integer.valueOf(request.getParameter("idReuniao"));
			String idNegocio = request.getParameter("idNegocio");
			
			/* Remove os artefatos associados a reuniao */
			ArtefatoModel am = new ArtefatoModel();
			
			ArtefatoBean ab = new ArtefatoBean(idioma);
			ab.setReuniao(idReuniao);
			am.removeArtefatoPorReuniao(ab);

			/* Remove os participantes associados a reuniao */
			ParticipanteModel pm = new ParticipanteModel();
			pm.removeParticipantePorReuniao(idReuniao);
			
			/* Remove os encaminhamentos associados a reuniao */
			EncaminhamentoModel em = new EncaminhamentoModel();
			em.removeEncaminhamentoPorReuniao(idReuniao);
			
			ReuniaoModel rm = new ReuniaoModel();
			rm.removeReuniao(idReuniao);

			session.setAttribute("idNegocio", idNegocio);

			response.sendRedirect("reuniao.listar");

		} catch (Exception e) {
			System.out.println(e);
			request.getRequestDispatcher(General.TELA_ERRO_500).forward(request,
					response);
		}
	}

}
